unit U_Sel_CaixaDiario;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons, Mask, ToolEdit, CurrEdit;

type
  TF_Sel_CaixaDiario = class(TForm)
    BitBtn1: TBitBtn;
    e_resultado: TCurrencyEdit;
    procedure BitBtn1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  F_Sel_CaixaDiario: TF_Sel_CaixaDiario;

implementation

uses U_Dm_Querys, U_R_Caixa_Diario;

{$R *.dfm}

procedure TF_Sel_CaixaDiario.BitBtn1Click(Sender: TObject);
var vDinheiro,vRecebido,vDespesa:Currency;
begin
  vDinheiro:=0;
  vRecebido:=0;
  vDespesa:=0;

  Dm_Querys.Qry_Generica.Close;
  Dm_Querys.Qry_Generica.SQL.clear;
  Dm_Querys.Qry_Generica.SQL.Add('select sum(dinheiro)as tdinheiro, sum(cheque)as tcheque, sum(valetichet) as tvaletichet, sum(troco) as ttroco from CAIXAGERAL ');
  Dm_Querys.Qry_Generica.Sql.Add(' Where (((DATA >=:pDataI) and (DATA <=:pDataF))and estornado=:pEstornado)');
  Dm_Querys.Qry_Generica.ParamByName('pEstornado').AsInteger:=0;
  Dm_Querys.Qry_Generica.ParamByName('pDataI').AsDate:=now;
  Dm_Querys.Qry_Generica.ParamByName('pDataF').AsDate:=now;
  Dm_Querys.Qry_Generica.Open;

  vDinheiro:=(Dm_Querys.Qry_Generica.fieldbyname('tdinheiro').value+Dm_Querys.Qry_Generica.fieldbyname('tcheque').value+Dm_Querys.Qry_Generica.fieldbyname('tvaletichet').value)-Dm_Querys.Qry_Generica.fieldbyname('ttroco').value;

  //***
  Dm_Querys.Qry_Generica.Close;
  Dm_Querys.Qry_Generica.SQL.Clear;
  Dm_Querys.Qry_Generica.Sql.Add ('select sum(vr_recebido) as trecebido from MV_FINANCEIRO');
  Dm_Querys.Qry_Generica.Sql.Add('WHERE estornado=:pEstornado');
  Dm_Querys.Qry_Generica.ParamByName('pEstornado').AsInteger:=0;
  Dm_Querys.Qry_Generica.Sql.Add('and(TIPO_LANCAMENTO =:pTIPO)' );
  Dm_Querys.Qry_Generica.ParamByName('pTIPO').AsString:='C';
  Dm_Querys.Qry_Generica.Sql.Add('AND ((DATA_VENCIMENTO >=:pINICIO)AND(DATA_VENCIMENTO <=:pFIM)) ' );
  Dm_Querys.Qry_Generica.ParamByName('pINICIO').AsDate:=now;
  Dm_Querys.Qry_Generica.ParamByName('pFIM').AsDate:=now;
  Dm_Querys.Qry_Generica.Sql.Add('AND(EFETUADO =:pEFETUADO)' );
  Dm_Querys.Qry_Generica.ParamByName('pEFETUADO').AsString:='Q';
  Dm_Querys.Qry_Generica.open;

  vRecebido:=Dm_Querys.Qry_Generica.fieldbyname('trecebido').Value;

  //***
  Dm_Querys.Qry_Generica.Close;
  Dm_Querys.Qry_Generica.SQL.Clear;
  Dm_Querys.Qry_Generica.SQL.Add('select sum(vr_recebido) as trecebido  from mv_financeiro');
  Dm_Querys.Qry_Generica.SQL.Add('where (data_lancamento >=:pdt_Inicial)and(data_lancamento <=:pdt_Final)');
  Dm_Querys.Qry_Generica.SQL.Add('and(estornado =:vEstornado)and(origem_lancamento =:vOrigem)and(tipo_lancamento=:vLancamento)');
  Dm_Querys.Qry_Generica.ParamByName('vLancamento').AsString:='D';
  Dm_Querys.Qry_Generica.ParamByName('vEstornado').Value:=0;
  Dm_Querys.Qry_Generica.ParamByName('vOrigem').AsString:='M';
  Dm_Querys.Qry_Generica.ParamByName('pdt_Inicial').Value:=now;
  Dm_Querys.Qry_Generica.ParamByName('pdt_Final').Value:=now;
  Dm_Querys.Qry_Generica.open;

  vDespesa:=Dm_Querys.Qry_Generica.fieldbyname('trecebido').Value;


  e_resultado.Value:=(vDinheiro+vRecebido)-vDespesa;

//******************************************************************************
 { If (R_CaixaDiario = nil)  then
    Application.CreateForm(TR_CaixaDiario, R_CaixaDiario);
    R_CaixaDiario.Quick_Caixa.Prepare;
    R_CaixaDiario.Quick_Caixa.Preview;
    R_CaixaDiario.Free;
    R_CaixaDiario:=nil;}
end;

end.
